草庐IT

java - 编码约定 - 命名枚举

全部标签

javascript - 函数定义中使用的命名数组元素

最近我发现这种语法适用于JavaScript(Chrome53):functionfoo([param1]){//Functionargumentisdeclaredasarrayandparam1isusedasvariable?Whatisthenameofthissyntax?console.log(param1);}foo(['TestParameter1']);//Case1-works.Output:TestParameter1foo('TestParameter1');//Case2-works???Why?Output:TestParameter1foo(123);//

javascript - Firefox 扩展如何最好地避免污染全局命名空间?

在为Firefox开发扩展时,我一直在研究全局命名空间污染,我想在我的扩展中尽可能避免它。有几种解决方案,但一般来说,这些解决方案似乎只为您的扩展声明一个全局变量,并将所有内容放入其中。因此,您只需向全局命名空间添加一个额外的变量,这还算不错。顺便说一句,有人向我提出了一个解决方案,可以避免将任何额外变量放入全局命名空间;将所有内容包装在一个函数中。这里的问题是在您的XUL覆盖层中没有任何东西可以引用。您必须在叠加层中声明元素,然后在JS中添加大量的addEventListener来替换像oncommand="..."这样的东西在XUL中。我不想这样做;我绝对希望我的XUL在XUL本身

javascript - CSS 样式属性名称——从常规版本到 JS 属性驼峰命名版本,反之亦然

是否有获取相应名称的规定?我正在编写的函数必须通过element.style[propnameCamelCase]设置样式并通过document.defaultView.getComputedStyle(element,'')检索现有的渲染值.getPropertyValue(propname-regular),我很难证明必须将两个单独但语义相同的参数传递给此函数。我知道对于它们中的大多数来说,这是一个相当简单的转录,在驼峰式和连字符分隔之间用相同的词分隔,所以我可以使用正则表达式来转换它们。但也许有一些不是这样的?我很难弄清楚如何使用正则表达式处理驼峰式大小写的大写字母。编辑:啊,我

javascript - 在 JavaScript 中分配给变量时使用命名函数的目的是什么?

我最近在https://github.com/yeoman/generator-webapp的源代码中发现了这种模式:AppGenerator.prototype.packageJSON=functionpackageJSON(){this.template('_package.json','package.json');};无论如何,当您要将其分配给变量或对象属性时,将函数命名为“packageJSON”的目的是什么?我一直在类似情况下使用匿名函数。 最佳答案 用于调试目的。如果您使用命名函数,您可以在您最喜欢的开发工具中的调用堆

javascript - angular.js $http.get 如何强制使用 UTF-8 编码

我必须读取使用utf-8字符集编码的JSON文件我使用这种语法:$http.get('resources/negozi.json',{header:{'Content-Type':'application/json;charset=UTF-8'}}).success(function(data){...codehere});但是,响应头是:Content-Type:text/plain;charset=ISO-8859-1如果我尝试使用jquery执行此操作:$.ajax({type:"GET",url:"resources/negozi.json",contentType:"appl

javascript - 使用 .splice() 格式化加拿大邮政编码

如果输入错误,我需要正确格式化加拿大邮政编码。格式为######其中“#”可以是数字或字母,例如:M5R2G3我试过这个:(出于测试目的将其分解)shipping.zip=shipping.zip.toUpperCase().split('')shipping.zip=shipping.zip.splice(3,0,'')shipping.zip=shipping.zip.join().replace(/,/g,'');但是当我输入时:m5r2g3我明白了:['M','5','R','2','G','3'][]就是这样。我不知道为什么它不起作用。请帮忙。谢谢。

javascript - 您可以使属性在 javascript 中可枚举但不可迭代吗?

我只是想知道是否有一种方法可以使对象属性像在forin循环中一样可枚举,但不会出现在forof循环中,有点像Object.defineProperty({},'prop',{enumerable:true,iterable:false}如果没有,是否有计划实现这样的功能?或者forof循环是否使用可枚举属性 最佳答案 我在Mozilla开发网络(MDN)上进行了一些挖掘。原来对象有一个obj.propertyIsEnumerable(prop)检查属性是否可枚举的方法。从MDN中给出的示例来看,通过原型(prototype)链继承的

javascript - 命名函数在 JavaScript 中被低估了吗?

以jQuery框架为例,如果你运行这样的代码:$(document).ready(functioninit(){foo.bar();});您在Firebug中获得的堆栈跟踪将如下所示:init()anonymous()anonymous([function(),init(),function(),4more...],function(),Objectname=args)anonymous()anonymous()如您所见,它的可读性不是很好,因为您必须单击每个函数才能了解它是什么。匿名函数还会在探查器中显示为(?)(),并且它们会导致“cannotaccessoptimizedclos

javascript - 重命名 Typescript 文件

可能是我遗漏了一些东西(或者可能是我太累了:P)。在VisualStudio2012的Typescript项目中,当我重命名一个ts文件时,它不会重命名与该ts文件链接的js文件,而是创建一个新文件。例如:旧情况:(file1.ts-->file1.js)重命名后:(file1337.ts-->file.js)+file1337.js//file1337不包含在项目中,我需要手动完成...那么有没有一种方法可以同时重命名ts文件和直接链接到这个文件的js,而不需要新建一个,而不必在项目中手动添加新的js文件?谢谢 最佳答案 我发现如

javascript - 声明后执行命名函数

我知道这可以用于匿名函数(functiontoBeExecutedImmediately(){//Code}());我有一个函数想在其他地方使用,但也应该立即执行。是否可以用一个语句而不是下面的语句来做到这一点?不需要返回值。functiontoBeExecutedImmediately(){//Code};toBeExecutedImmediately(); 最佳答案 Isitpossibletodoitwithonestatementinsteadofthefollowing?没有。正如您所发现的,命名函数表达式(您的第一个示例